package com.slz.crm.pojo.excel;

import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.HeadFontStyle;
import com.slz.crm.pojo.ao.Excel;
import com.slz.crm.pojo.ao.Privacy;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.time.LocalDateTime;

@Data
@EqualsAndHashCode
public class CustomerContactExcel implements Excel, Privacy {
    @ExcelProperty("客户联系人ID")
    @ColumnWidth(15)
    private Long id;
    
    @ExcelProperty("公司ID")
    @ColumnWidth(15)
    private Long companyId;
    
    @ExcelProperty("公司名称")
    @HeadFontStyle(color = 10)
    @ColumnWidth(25)
    private String companyName;
    
    @ExcelProperty("联系人姓名")
    @HeadFontStyle(color = 10)
    @ColumnWidth(15)
    private String name;
    
    @ExcelProperty("职位")
    @ColumnWidth(15)
    private String position;
    
    @ExcelProperty("固定电话")
    @ColumnWidth(20)
    private String phone;
    
    @Override
    public Boolean phone() {
        this.phone = "********";
        return true;
    }

    @ExcelProperty("手机号码")
    @HeadFontStyle(color = 10)
    @ColumnWidth(20)
    private String mobile;
    
    @Override
    public Boolean mobile() {
        this.mobile = "********";
        return true;
    }

    @ExcelProperty("邮箱")
    @ColumnWidth(30)
    private String email;
    
    @Override
    public Boolean email() {
        this.email = "********";
        return true;
    }

    @ExcelProperty("性别")
    @ColumnWidth(10)
    private String gender;
    
    @ExcelProperty("备注")
    @ColumnWidth(50)
    private String remark;
    
    @ExcelProperty("创建人ID")
    @ColumnWidth(15)
    private Long creatorId;

    @ExcelProperty("创建人名字")
    @ColumnWidth(15)
    private String createName;
    
    @ExcelProperty("创建时间")
    @ColumnWidth(20)
    private LocalDateTime createTime;
    
    @ExcelProperty("更新时间")
    @ColumnWidth(20)
    private LocalDateTime updateTime;
}